<?php

require_once( 'flexical/admin/request.php' );

class Flexical_Admin_Basic_Listing_Request extends Flexical_Admin_Request
{
	public $listing;

	public function __construct( $listing )
	{
		$this->listing = $listing;
	}
}

abstract class Flexical_Admin_Cancelable_Listing_Request extends Flexical_Admin_Basic_Listing_Request
{
	public $cancel_selected = false;

	public function __construct( $listing, $cancel_selected )
	{
		parent::__construct( $listing );
		$this->cancel_selected = $cancel_selected;
	}
}

class Flexical_Admin_Show_Listings_Request extends Flexical_Admin_Request
{
}

class Flexical_Admin_Create_Listing_Request extends Flexical_Admin_Cancelable_Listing_Request
{
}

class Flexical_Admin_Update_Listing_Request extends Flexical_Admin_Cancelable_Listing_Request
{
}

class Flexical_Admin_Delete_Listing_Request extends Flexical_Admin_Cancelable_Listing_Request
{
}

class Flexical_Admin_Edit_Listing_Request extends Flexical_Admin_Basic_Listing_Request
{
}

class Flexical_Admin_Test_Listing_Request extends Flexical_Admin_Basic_Listing_Request
{
}

class Flexical_Admin_Confirm_Delete_Listing_Request extends Flexical_Admin_Basic_Listing_Request
{
}

class Flexical_Admin_Delete_All_Listings_Request extends Flexical_Admin_Basic_Listing_Request
{
	public $confirmed = false;

	public function __construct( $confirmed )
	{
		$this->confirmed = $confirmed;
	}
}

?>